/*
	消息结构体实现
*/

package zserver

type ZMessage struct {
	MsgId     uint32 // 消息Id
	MsgLength uint32 // 消息长度
	MsgData   []byte // 消息内容
}

// 新建Message
func NewMessage(msgId uint32, msgData []byte) *ZMessage {
	return &ZMessage{
		MsgId: msgId,
		MsgLength: uint32(len(msgData)),
		MsgData: msgData,
	}
}

// 实现IMessage接口；Get/Set方法的实现

// Get
func (zm *ZMessage) GetMsgId() uint32 {
	return zm.MsgId
}

func (zm *ZMessage) GetMsgLength() uint32 {
	return zm.MsgLength
}

func (zm *ZMessage) GetMsgData() []byte {
	return zm.MsgData
}

// Set
func (zm *ZMessage) SetMsgId(msgId uint32) {
	zm.MsgId = msgId
}

func (zm *ZMessage) SetMsgLength(msgLength uint32) {
	zm.MsgLength = msgLength
}

func (zm *ZMessage) SetMsgData(msgData []byte) {
	zm.MsgData = msgData
}
